package projeto.comercial.gerenciarservico.cih.venderoportunidade;

import java.util.ArrayList;
import java.util.List;

import nucleo.comuns.visao.NucleoTab;
import plataforma.base.cdp.ExcecaoRegraNegocio;
import plataforma.crudestatico.cih.FormularioDadosCRUDEstatico;
import projeto.comercial.gerenciarservico.cci.CtrlGerenciarServicos;
import projeto.comercial.gerenciarservico.cdp.Servico;
import projeto.comercial.oportunidade.cdp.OportunidadeServico;

public class FormDadosVenderServicoDeOportunidade extends
		FormularioDadosCRUDEstatico<Servico> {

	// tem que atualizar a oportunidade depois
	OportunidadeServico oportunidade;

	AbaDadosVenderServicoOportunidade abaDados = new AbaDadosVenderServicoOportunidade();

	@Override
	protected List<NucleoTab> definirTabs() {
		List<NucleoTab> listaTabs = new ArrayList<NucleoTab>();
		listaTabs.add(abaDados);
		return listaTabs;
	}

	@Override
	protected void preencherDadosTela(Servico objeto)
			throws ExcecaoRegraNegocio {
		tbbtVoltarParaListagem.setParent(null);
		abaDados.getValorVenda().setValorDecimal((objeto.getValorVenda()));
		abaDados.getValorFinal().setValorDecimal(objeto.getValorVenda());
		abaDados.getCampoNomeKServico().setValue(
				objeto.getKservico().getDescricao());
	}

	@Override
	protected void preencherDadosObjeto(Servico objeto) {
		objeto.setSituacao(abaDados.getSituacao().getValorSelecionado());
		objeto.setDataPrevistaConclusao(abaDados.getDataPrevistaConclusao().getValue());
		objeto.setValorVenda(abaDados.getValorVenda().getValorDecimal());
		objeto.setValorDesconto(abaDados.getValorDesconto().getValorDecimal());
		objeto.setValorFinal(abaDados.getValorFinal().getValorDecimal());
		objeto.setCliente(abaDados.getCampoCliente().getSelecionado());
		
	}

	@Override
	public boolean isValid() {
		return abaDados.isValid();
	}

	@Override
	public void acaoSalvar() {
		CtrlGerenciarServicos ctrl = (CtrlGerenciarServicos) getControlador();
		ctrl.acaoSalvarServicoVindoOportunidade();
	}

}
